Method and system for communicating with a device attached to a computer using electronic mail messages

ABSTRACT

A method, system, and computer program product for communicating with machines connected to a network. Information sent to or from the machines is transmitted using electronic mail. The electronic mail may be transmitted over the Internet, but also may remain within a local or wide area network. When receiving electronic mail, the electronic mail message may be sent to a user who reads information regarding the purpose of the electronic mail message in the body of the message. When the user is satisfied that it is safe to perform the functions requested by the email, the user may execute a file which is attached to the incoming email message in order to perform the appropriate diagnostic or control operations. Alternatively, the incoming email message may contain a code or is sent to an address which causes automatic execution of the desired functions. In this embodiment, it may not be necessary for the user to manually perform any action in order to allow the appropriate processing to begin. Email messages may also be transmitted from the computer which is attached to the device which is being monitored or controlled and include information regarding the status or capabilities of the attached device.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 09/192,583, filed Nov. 17, 1998. The entirecontents of the above-identified application are incorporated herein byreference.

The present application is also related to U.S. patent application Ser.No. 08/883,492 filed Jun. 26, 1997 entitled “Method and System forDiagnosis and Control of Machines Using Connectionless Modes HavingDelivery Monitoring and an Alternate Communication Mode,” U.S. patentapplication Ser. No. 08/820,633 filed Mar. 19, 1997, now U.S. Pat. No.5,887,216, entitled “Method and System to Diagnose a Business OfficeDevice Based on Operating Parameters Set by a User,” U.S. patentapplication Ser. No. 08/733,134 filed Oct. 16, 1996, now U.S. Pat. No.5,909,493, entitled “Method and System for Diagnosis and Control ofMachines Using Connectionless Modes of Communication,” U.S. patentapplication Ser. No. 08/624,228 filed Mar. 29, 1996, now U.S. Pat. No.5,818,603, entitled “Method and System for Controlling and Communicatingwith Machines Using Multiple Communication Formats,” U.S. patentapplication Ser. No. 08/738,659, now U.S. Pat. No. 6,889,263, and Ser.No. 08/738,461, now U.S. Pat. No. 6,970,952, both of which are entitled“Method and System for Diagnosis and Control of Machines UsingConnection and Connectionless Modes of Communication,” filed Oct. 30,1996, and are divisions of U.S. patent application Ser. No. 08/463,002filed Jun. 5, 1995, entitled “Method and System for Diagnosis andControl of Machines Using Connection and Connectionless Modes ofCommunication”, now U.S. Pat. No. 5,819,110, and U.S. patent applicationSer. No. 08/852,413 filed May 7, 1987, entitled “Method and System forControlling and Communicating with Business Office Devices,” now U.S.Pat. No. 5,774,678, which is a continuation of U.S. patent applicationSer. No. 08/698,068 filed Aug. 15, 1996, entitled “Method and Apparatusfor Controlling and Communicating With Business Office Devices”, nowU.S. Pat. No. 5,649,120 which is a continuation of U.S. patentapplication Ser. No. 08/562,192 filed Nov. 22, 1995, now U.S. Pat. No.5,568,618, which is a continuation of U.S. patent application Ser. No.08/473,780 filed Jun. 6, 1995, entitled “Method and Apparatus forControlling and Communicating With Business Office Devices”, now U.S.Pat. No. 5,544,289, which is a continuation of U.S. patent applicationSer. No. 08/426,679 filed Apr. 24, 1995, now U.S. Pat. No. 5,537,554,entitled “Method and Apparatus for Controlling and Communicating WithBusiness Office Devices” which is a continuation of U.S. patentapplication Ser. No. 08/282,168 filed Jul. 28, 1994 and entitled “Methodand Apparatus for Controlling and Communicating With Business OfficeDevices”, now U.S. Pat. No. 5,412,779, which is a continuation of U.S.patent application Ser. No. 07/902,462 filed Jun. 19, 1992, nowabandoned, which is a continuation of U.S. patent application Ser. No.07/549,278, filed Jul. 6, 1990, now abandoned, the disclosure of each isincorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention generally relates to the use of electronic mail messagesfor communicating information to and from a device connected to acomputer. The invention is more particularly related to the processingperformed within the computer in order to forward the appropriateinformation to or from the device. The invention is further related to amethod and system for receiving an electronic mail message by thecomputer and determining if the electronic mail message containsinformation which is designated for the attached device. Still further,the invention is related to the transmission of information originatingfrom a device attached to a computer using electronic mail as atransmission device.

2. Discussion of the Background

Electronic mail (“email”) has become very popular for communicatinginformation between people and provides the benefits of beinginexpensive and convenient to a user. Extensive information andprotocols are available explaining how email including Internet emailoperates and many commercially available programs are available toimplement email functions.

While there exists many commercially available programs specificallydesigned to communicate electronic mail messages between humans, thereare no known commercially available email programs for communicatinginformation which originates from or is intended to be delivered tocontrol a machine.

SUMMARY OF THE INVENTION

Accordingly, it is an object of this invention to provide a method,system, and computer program product for implementing communicationusing electronic mail messages.

It is another object of this invention to provide a method, system, andcomputer program product in which a message is received from, processedby, and transmitted to a device connected to the computer which receivesthe electronic mail message.

It is yet another object of the invention to provide a method, system,and computer program product which transmits information originatingfrom a device through a computer.

These and other objects are accomplished by a method, system, andcomputer program product in which an electronic mail message is receivedby a computer. When it is determined that the electronic mail messagecontains information for a device associated with the computer, acommunication is transmitted from the computer to the device. In anembodiment of the invention, a person may read the email to determinethat the email is for the attached device. The user may then manuallyperform an action which causes information to be transmitted from thecomputer to the device. Such an action by a user may include executing afile attached to an electronic mail message which causes a device driverto transmit the appropriate information to the attached device. Thedevice may be any type of device including a business office device, adigital camera, or any other electronic device which is desired to beremotely monitored and/or controlled including equipment for remotelymonitoring and controlling utility meters.

As an alternative way of forwarding information from an email message toan attached device, the computer may automatically analyze a receivedemail and determine that information is to be transmitted to the device,without any type of user invention. A program which monitors receivedemail may be executing in the computer and this program may determinethat the received email message is for the device by detecting a codewithin the message. Such a function may be implemented by monitoring thesubject of the message or alternatively detecting a code which exists inthe body of the message, for example.

The invention also relates to the transmission of an outgoing emailmessage from the computer containing information from the attacheddevice. Information from the device may be transmitted to a devicedriver of the computer and subsequently to a Messaging ApplicationPrograming Interface (“MAPI”) of the computer. If desired, thetransmission of the electronic mail message from the device mayestablish a TCP (“Transmission Control Protocol”) connection between thecomputer which functions as a message transfer agent. As a furtheralternative, one or more files may be created within the computer andthese files may be written to a mail spool directory of the computer.When the computer detects the existence of the file(s) in the mail spooldirectory, an email message is transmitted from the computer.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the invention and many of the attendantadvantages thereof will be readily obtained as the same becomes betterunderstood by reference to the following detailed description whenconsidered in connection with the accompanying drawings, wherein:

FIG. 1 illustrates three networked business office machines connected toa network of computers and data bases through the Internet;

FIG. 2 illustrates the components of a digital copier/printer;

FIG. 3 illustrates the electronic components of the digitalcopier/printer illustrated in FIG. 2;

FIG. 4 illustrates details of the multi-port communication interfaceillustrated in FIG. 3;

FIG. 5 illustrates an alternative system configuration in which businessoffice devices are connected to a computer which is connected to anetwork, and also devices which are connected directly to the network;

FIG. 6A illustrates in block diagram format a manner in whichinformation may be communicated to or from a device using electronicmail;

FIG. 6B illustrates an alternative way of communicating using electronicmail in which the computer which is connected to the device also servesas a message transfer agent;

FIG. 7 illustrates an alternative manner of sending messages across theInternet;

FIG. 8 illustrates an exemplary computer which may be connected to thedevice and used to communicate electronic mail messages;

FIG. 9 illustrates in block diagram format modules, objects, andinformation which are contained within a computer;

FIG. 10 illustrates information of a device driver which may be usedwith this invention;

FIG. 11A illustrates an exemplary email message and FIG. 11B illustratesan executable file which may be attached to the email message of FIG.11A;

FIG. 12 illustrates a screen display of an email message;

FIG. 13 illustrates a method of receiving an email message according toa first embodiment of the invention;

FIG. 14 illustrates a method of receiving an electronic mail messageaccording to a second embodiment of the invention;

FIG. 15 illustrates a method of transmitting an electronic mail messageaccording to an embodiment of the invention;

FIG. 16 illustrates an alternative method of transmitting informationaccording to a second embodiment of the invention;

FIG. 17 illustrates a data structure containing device information;

FIG. 18 illustrates a log of trouble information which has occurred invarious business office devices;

FIG. 19 illustrates query results of information relating to a specificprinter; and

FIG. 20 illustrates an exemplary monthly report generated by the presentinvention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring now to the drawings, wherein like numerals designate identicalor corresponding parts throughout the several views, and moreparticularly to FIG. 1 thereof, there is illustrated a figure showingvarious machines and computers for monitoring, diagnosing andcontrolling the operation of the machines. In FIG. 1, there is a firstnetwork 16, such as a Local Area Network (LAN) connected to computerworkstations 17, 18, 20 and 22. The workstations can be any type ofcomputers including IBM Personal Computer compatible devices, Unix basedcomputers, or Apple Macintoshes. Also connected to the network 16 are adigital copier/printer 24, a facsimile machine 28, and a printer 32. Thedevices 24, 28 and 32 are referred to as machines or monitored devicesand other types of devices may be used as the machines or monitoreddevices, including any of the devices discussed below. Also, a facsimileserver (not illustrated) may be connected to the network 16 and have atelephone, ISDN (Integrated Services Digital Network), or cableconnection. In addition to the digital copier/printer 24, facsimilemachine 28, and printer 32 being connected to the network 16, thesedevices may also include conventional telephone and/or ISDN and/or cableconnections 26, 30 and 34, respectively. As is explained below, thebusiness office machines or business devices 24, 28 and 32 communicatewith a remote monitoring, diagnosis and control station, also referredto as a monitoring device, through the Internet via the network 16 or bya direct telephone, ISDN, or cable connection.

In FIG. 1, the Internet is generally designated by 10. The Internet 10includes a plurality of interconnected computers and routers designatedby 12A-12B. The manner of communicating over the Internet is knownthrough RFC documents obtained by FTP at NIC.DDN.MIL or at FTPNISC.SRI.COM. TCP/IP related communication is described for example inthe book “TCP/IP Illustrated,” Vol. 1, The Protocols, by Stevens, fromAddison-Wesley Publishing Company, 1994, which is incorporated herein byreference.

In FIG. 1, a firewall 14 is connected between the Internet 10 and thenetwork 16. A firewall is a device that allows only authorized computersto access a network or other computer via the Internet. Firewalls areknown and commercially available devices and/or software and, forexample, include SunScreen from Sun Microsystems Inc. Similarly, afirewall 50 is connected between the Internet 10 and a network 52. Also,a firewall 40 is connected between the Internet 10 and a workstation 42.

The network 52 is a conventional network and includes a plurality ofworkstations 56, 62, 68 and 74. These workstations may be differentdepartments within a company such as a marketing, manufacturing, designengineering and customer service departments. In addition to theworkstations connected via the network 52, there is a workstation 42which is not directly connected to the network 52. Information in a database stored in a disk 46 may be shared using proper encryption andprotocols over the Internet to the workstations connected directly tothe network 52. Also, the workstation 42 includes a direct connection toa telephone line and/or ISDN and/or cable 44 and the data base in disk46 may be accessed through the telephone line, ISDN, or cable. The cableused by this invention may be implemented using a cable which typicallyis used to carry television programming, cable which provides for highspeed communication of digital data typically used with computers or thelike, or may be implemented using any desired type of cable.

Information of the business office machines 24, 28 and 32 may be storedin one or more of the data bases stored in the disks 46, 54, 58, 64, 70and 76. Each of the customer service, marketing, manufacturing, andengineering departments may have their own data base or may share fromone or more data bases. Each of the disks used to store data bases is anon-volatile memory such as a hard disk or optical disk. Alternatively,the data bases may be stored in any storage device including solid stateand/or semiconductor memory devices. As an example, disk 64 contains themarketing data base, disk 58 contains the manufacturing data base, disk70 contains the engineering data base and disk 76 contains the customerservice data base. Alternatively, the disks 54 and 46 store one or moreof the data bases.

In addition to the workstations 56, 62, 68, 74 and 42 being connected tothe Internet, these workstations may also include a connection to atelephone line, ISDN, or cable which provides a secure connection to themachine being monitored diagnosed and/or controlled and is used during aconnection-mode of communication. Additionally, if one of the Internet,telephone, ISDN, or cable is not operating properly, one of the otherscan be automatically used for communication.

A feature of the present invention is the use of a connectionless-modeof communication (e.g., Internet email) or transmission between amachine and a computer for diagnosing and controlling the machine.Alternatively, the email which is transmitted may be implemented using aconnection mode of communication. The IBM Dictionary of Computing byGeorge McDaniel, 1994, defines a connectionless-mode transmission to bethe transmission of a single unit of data from a source service accesspoint to one or more destination service access points withoutestablishing a connection. The IBM Dictionary also defines aconnection-mode transmission to be the transmission of units of datafrom a source service access point to one or more destination serviceaccess points via a connection. The connection is established prior todata transfer and released following data transfer. Additionalinformation about the connection-mode and the connectionless-mode ofoperation is described in the Handbook of Computer-CommunicationsStandards, Vol. 1, 2nd Edition, by William Stallings, 1990, which isincorporated herein by reference. In order to transfer data from one DTE(Data Terminal Equipment) to another DTE, there is a unique identifieror address for each DTE. This unique identifier or address is usable inboth connectionless-modes and connectionless-modes of communication.

FIG. 2 illustrates the mechanical layout of the digital copier/printer24 illustrated in FIG. 1. In FIG. 2, 101 is a fan for the scanner, 102is a polygonal mirror used with a laser printer, and 103 designates anFθ lens used to collimate light from a laser (not illustrated).Reference numeral 104 designates a sensor for detecting light from thescanner, 105 is a lens for focusing light from the scanner onto thesensor 104, and 106 is a quenching lamp used to erase images on thephotoconductive drum 132. There is a charging corona unit 107 and adeveloping roller 108. Reference numeral 109 designates a lamp used toillustrate a document to be scanned and 110, 111 and 112 designatemirrors used to reflect light onto the sensor 104. There is a drummirror 113 used to reflect light to the photoconductive drum 132originating from the polygon mirror 102. Reference numeral 114designates a fan used to cool the charging area of the digitalcopier/printer, and 115 is a first paper feed roller used for feedingpaper from the first paper cassette 117, and 116 is a manual feed table.Similarly, 118 is a second paper feed roller for the second cassette119. Reference numeral 120 designates a relay roller, 121 is aregistration roller, 122 is an image density sensor and 123 is atransfer/separation corona unit. Reference numeral 124 is a cleaningunit, 125 is a vacuum fan, 126 illustrates a transport belt, 127 is apressure roller, and 128 is an exit roller. Reference numeral 129 is ahot roller used to fix toner onto the paper, 130 is an exhaust fan and131 is the main motor used to drive the digital copier.

FIG. 3 illustrates a block diagram of the electronic componentsillustrated in FIG. 2. The CPU 160 is a microprocessor and acts as thesystem controller. There is a random access memory 162 to storedynamically changing information including operating parameters of thedigital copier. A read only memory 164 stores the program code used torun the digital copier and also information describing the copier(static-state data) such as the model number, serial number of thecopier, and default parameters.

There is a multi-port communication interface 166 which allows thedigital copier to communicate with external devices. Reference numeral168 represents a telephone, ISDN, or cable line and 170 represents anetwork. Further information of the multi-port communication interfaceis described with respect to FIG. 4. An interface controller 172 is usedto connect an operation panel 174 to a system bus 186. The operationpanel 174 includes standard input and output devices found on a digitalcopier including a copy button, keys to control the operation of thecopier such as number of copies, reducement/enlargement,darkness/lightness, etc. Additionally, a liquid crystal display may beincluded within the operation panel 174 to display parameters andmessages of the digital copier to a user.

A storage interface 176 connects storage devices to the system bus 186.The storage devices include a flash memory 178 which can be substitutedby a conventional EEPROM and a disk 182. The disk 182 includes a harddisk, optical disk, and/or a floppy disk drive. There is a connection180 connected to the storage interface 176 which allows for additionalmemory devices to be connected to the digital copier. The flash memory178 is used to store semi-static state data which describes parametersof the digital copier which infrequently change over the life of thecopier. Such parameters include the options and configuration of thedigital copier. An option interface 184 allows additional hardware suchas an external interface to be connected to the digital copier. Aclock/timer 187 is utilized to keep track of both the time and date andalso to measure elapsed time.

On the left side of FIG. 3, the various sections making up the digitalcopier are illustrated. Reference numeral 202 designates a sorter andcontains sensors and actuators used to sort the output of the digitalcopier. There is a duplexer 200 which allows a duplex operation to beperformed by the digital copier and includes conventional sensors andactuators. The digital copier includes a large capacity tray unit 198which allows paper trays holding a large number of sheets to be usedwith the digital copier. The large capacity tray unit 198 includesconventional sensors and actuators.

A paper feed controller 196 is used to control the operation of feedingpaper into and through the digital copier. A scanner 194 is used to scanimages into the digital copier and includes conventional scanningelements such as a light, mirror, etc. Additionally, scanner sensors areused such as a home position sensor to determine that the scanner is inthe home position and a lamp thermistor to ensure proper operation ofthe scanning lamp. There is a printer/imager 192 which prints the outputof the digital copier and includes a conventional laser printingmechanism, a toner sensor, and an image density sensor. The fuser isused to fuse the toner onto the page using a high temperature roller andincludes an exit sensor, a thermistor to assure that the fuser is notoverheating, and an oil sensor. Additionally, there is an optional unitinterface 188 used to connect to optional elements of the digital copiersuch as an automatic document feeder, a different type ofsorter/collator, or other elements which can be added to the digitalcopier.

FIG. 4 illustrates details of the multi-port communication interface166. The digital copier may communicate to external devices through aCentronics interface 220 which receives or transmits information to beprinted, a cable modem unit 221 which has a high speed connection overcable, a SCSI interface 222, a conventional telephone interface 224which connects to a telephone line 168A, an ISDN interface 226 whichconnects to an ISDN line 168B, an RS-232 interface 228, and a LANinterface 230 which connects to a LAN 170. A single device whichconnects to both a Local Area Network and a telephone line iscommercially available from Megahertz and is known as theEthernet-Modem.

The CPU or other microprocessor or circuitry executes a monitoringprocess to monitor the state of each of the sensors of the digitalcopier, and a sequencing process is used to execute the instructions ofthe code used to control and operate the digital copier. Additionally,there is a central system control process executed to control theoverall operation of the digital copier and a communication process usedto assure reliable communication to external devices connected to thedigital copier. The system control process monitors and controls datastorage in a static state memory such as the ROM 164 of FIG. 3, asemi-static memory such as the flash memory 178 or disk 182, or thedynamic state data which is stored in a volatile or non-volatile memorysuch as the RAM 162 or the flash memory or disk 182. Additionally, thestatic state data may be stored in a device other than the ROM 164 suchas a non-volatile memory including either of the flash memory 178 ordisk 182.

The above details have been described with respect to a digital copierbut the present invention is equally applicable to other business officemachines or devices such as an analog copier, a facsimile machine, ascanner, a printer, a facsimile server, or other business officemachines. Additionally, the present invention includes other types ofmachines which operate using a connection-mode or connectionless-mode ofcommunication, and also email, such as a metering system including agas, water, or electricity metering system, vending machines, or anyother device which performs mechanical operations, such as automobiles,has a need to be monitored, and performs a function. In addition tomonitoring special purpose machines, and computers, the invention can beused to monitor, control, and diagnose a general purpose computer whichwould be the monitored and/or controlled device.

FIG. 5 illustrates an alternative system diagram of the invention inwhich different devices and sub-systems are connected to the Internet10. However, there is no requirement to have each of these devices orsub-systems as part of the invention but any individual component orsubsystem illustrated in FIG. 5 is also part of the invention. Further,the elements illustrated in FIG. 1 may be connected to the Internet 10which is illustrated in FIG. 5. In FIG. 5, there is illustrated a firewall 250 connected to an intranet 252. One of the computers or devicesconnected to the intranet 252 is a service machine 254 which includestherein or has connected thereto data 256 which may be stored in a database format. The data 256 includes history, performance, malfunction,and any other information including statistical information of theoperation or failure or set-up and components or optional equipment ofdevices which are being monitored. The service machine 254 may beimplemented as the device or computer which requests the monitoreddevices to transmit data or which requests that remote control and/ordiagnosis tests be performed on the monitored devices. The servicemachine 254 may be implemented as any type of device and is preferablyimplemented using a computerized device such as a general purposecomputer.

Another sub-system of FIG. 5 includes a fire wall 258, an intranet 260,and a printer 262 connected thereto. In this sub-system, there is not aseparate general purpose computer connected between the intranet 260 (ora different type of computer network) but the functions of sending andreceiving electronic mail messages by the printer 262 (and similarly bya copier 286) are performed by circuitry, a microprocessor, or any othertype of hardware contained within or mounted to the printer 262.

An alternate type of sub-system includes the use of an Internet serviceprovider 264 which may be any type of Internet service providerincluding known commercial companies such as America Online, Netcom,CompuServe, Niftyserve, the Internet service provider Erols, or anyother Internet service provider. In this sub-system, a computer 266 isconnected to the Internet service provider 264, through a modem, forexample, such as a telephone line modem, a cable modem, modems which useany type of wires such as modems used over an ISDN (Integrated ServicesDigital Network) line, ADSL (Asymmetric Digital Subscriber Line), modemswhich use frame relay communication, any digital or analog modem,wireless modems such as a radio frequency modem, a fiber optic modem, ora device which uses infrared light waves. Further, a business officedevice 268 is connected to the computer 266. As an alternative to thebusiness office device 268 (and any other device illustrated in FIG. 5),a different type of machine may be monitored or controlled such as adigital copier, any type of appliance, security system, or utility metersuch as an electrical, water, or gas utility meter, or any other devicediscussed herein.

Also illustrated in FIG. 5 is a fire wall 270 connected to a network274. The network 274 may be implemented as any type of computer network,such an Ethernet network, for example. Networking software which may beused to control the network includes any desires networking softwareincluding software commercially available from Novell or Microsoft. Thenetwork 274 may be implemented as an Intranet, if desired. A computer272 connected to the network 274 may be used to obtain information froma business office device 278 and generate reports such as reportsshowing problems which occurred in various machines connected to thenetwork and a monthly usage report of the devices connected to thenetwork 274. In this embodiment, a computer 276 is connected between thebusiness office device 278 and the network 274. This computer receivesemail communications from the network and forwards the appropriatecommands or data, or any other information, to the business officedevice 278. While it has been stated that the business office device 278is connected to the computer 276, there is no requirement for a wiredconnection between the business office device and the computer andcommunication between the business office device 278 and the computer276 may be accomplished using wires or wireless methods includingthrough the use of radio frequency connections and light connectionswhich may be through an infrared connection, or through fiber optics.Similarly, each of the various networks and intranets illustrates inFIG. 5 may be established using any desired manner including through theestablishment of wireless networks such as radio frequency networks. Thewireless communication described herein may be established using spreadspectrum techniques including techniques which use a spreading code andfrequency hopping techniques such as the frequency hopping wirelessnetwork which is disclosed in the Bluetooth Specification which isdescribed at the world wide web site www.bluetooth.com, which isincorporated herein by reference.

Another sub-system illustrated in FIG. 5 includes a fire wall 280, anintranet 284, a computer 282 connected thereto, and a copier 286. Thecomputer 282 may be used to generate reports and request diagnostic orcontrol procedures. These diagnostic and control procedures may beperformed with respect to the copier 286 or any of the other devicesillustrated in or used with FIG. 5. While FIG. 5 illustrates a pluralityof fire walls, the fire walls are preferable but optional equipment andtherefore the invention may be operated without the use of fire walls,if desired.

FIG. 6A illustrates a device 300 connected to a typical email exchangesystem which includes components 302, 304, 306, 308, 310, 312, 314, 316,and 318 which may be implemented in a conventional manner and are takenfrom FIG. 28.1 of Stevens, above. The device 300 may be any of thedevices described herein and the user at a terminal 302 may correspondto any of the illustrated computers, such as the computer 276illustrated in FIG. 5. While FIG. 6A illustrates the user at a terminal302 as being a sender, the sending and receiving functions may bereversed in FIG. 6A. Further, if desired, there may not be a need forhaving a user at the terminal. Connected to the user at a terminal 302is the user agent 304. Popular user agents for Unix include MH, BerkeleyMail, Elm, and Mush. The user agent creates email messages to be sentand if desired, places these messages to be sent in a queue 306. Themail to be sent is forwarded to a Message Transfer Agent (MTA) 308. Acommon MTA for Unix systems is Sendmail. Typically, the message transferagents 308 and 312 exchange communications using a TCP (TransferCommunication Protocol) connection or a TCP/IP (Internet Protocol)connection or protocol. It is to be noted that the communication betweenthe message transfer agents 308 and 312 may occur over the Internet, butalternatively may occur over any type of connection including anynetwork connection such as a local area network, wide area networkand/or an intranet. Further, any desired connection between the messagetransfer agents 308 and 312 may be utilized.

From the message transfer agents 312, email messages are stored in usermailboxes 314 which are transferred to the user agent 316 and ultimatelytransmitted to the user at a terminal 318 which functions as a receivingterminal.

The TCP provides a connection-mode of transmission. However, a directconnection is usually not established between the sending terminal 302and receiving terminal 318. Thus, the transmission of an electronic mailmessage may be considered a connectionless-mode of communication when itis being referred to as between two users or terminals, but whenconsidering the transfer between MTAs, the communication is usually aconnection-mode of communication.

As the Internet is a network accessible by many people andorganizations, it is not considered to be secure. Therefore, messagestransmitted over the Internet should be encrypted to keep the messagesconfidential. Encryption mechanisms are known and commercially availablewhich may be used with the present invention. For example, a C libraryfunction, crypto, is available from Sun Microcomputers for use with theUnix operating system, and other encryption and decryption routines areknown and commercially available and may also be used with thisinvention.

As an alternative to the general structure of FIG. 6A, a single computermay be used which functions as the user terminal, and also the messagetransfer agent. As illustrated in FIG. 6B, the device 300 is connectedto a computer 301 which includes the message transfer agent 308. Ifdesired, the other components on the sending side of FIG. 6A may beincluded in the computer 301 of FIG. 6B including the user agent 304 andthe queue of mail to be sent 306.

FIG. 7 illustrates an alternative implementation of transferring mailand is based on FIG. 28.3 of Stevens. FIG. 7 illustrates an electronicmail system having a relay system at each end. The arrangement of FIG. 7allows one system at an organization to act as a mail hub. In FIG. 7,there are four MTAs connected between the two user agents 304 and 318.These MTAs include local MTA 322, relay MTA 328, relay MTA 332, andlocal MTA 340. The most common protocol used for mail messages is SMTP(Simple Mail Transfer Protocol) which may be used with this invention,although any desired mail protocol may be utilized. In FIG. 7, 320designates a sending host which includes the user at a terminal 302, theuser agent 306, and the local MTA 322. The device 300 is connected to,or alternatively included within, the sending host 320. Other local MTAsinclude local MTA 324 and 326. Mail to be transmitted and received maybe queued in a queue of mail 330 of the relay MTA 328. The messages aretransferred across the TCP connection 310, which may be, for example,the Internet, or may be any other type of network or connection.

The transmitted messages are received by the relay MTA 322 and ifdesired, stored in a queue of mail 334. The mail is then forwarded tothe local MTA 340 of a receiving host 342. The mail may be placed in oneor more of the user mailboxes 314 and subsequently forwarded to the useragent 316 and finally forwarded to the user at a terminal 318. Ifdesired, the user may not be required to be at the terminal and the mailmay be directly forwarded to the terminal without user interaction.Other local MTAs at the receiving side include MTA 338 and local MTA 336which may have their own mailboxes, user agents, and terminals.

The various computers utilized by the present invention including thecomputers 266, 276, and 286 of FIG. 5 may be implemented as illustratedin FIG. 8. Further, any other computer utilized by this invention may beimplemented in a similar manner to the computer illustrated in FIG. 8,if desired, including the service machine 254, computer 272, andcomputer 282 of FIG. 5. However, not every element illustrated in FIG. 8is required in each of these computers. In FIG. 8, the computer 360includes a CPU 362 which may be implemented as any type of processorincluding commercially available microprocessors from companies such asIntel, Motorola, Hitachi and NEC, for example. There is a working memorysuch as a RAM 364, and a wireless interface 366 which communicates witha wireless device 368. The communication between the interface 366 anddevice 368 may use any wireless medium such as radio waves, or lightwaves, for example. The radio waves may be implemented using a spreadspectrum technique such as Code Division Multiple Access (CDA)communication or using a frequency hopping technique such as thatdisclosed in the Bluetooth specification.

There is a ROM 370, and a flash memory 371, although any other type ofnonvolatile memory may be utilized in addition to or in place of theflash memory 371 such as an EPROM, or an EEPROM, for example. An inputcontroller 372 has connected thereto a keyboard 374 and a mouse 376.There is a serial interface 378 connected to a serial device 380.Additionally, a parallel interface 382 is connected to a parallel device384, a universal serial bus interface 386 is connected to a universalserial bus device 388, and also there is an IEEE 1394 device, commonlyreferred to as a fire wire device, connected to an IEEE 1394 interface398. The various elements of the computer 360 are connected by a systembus 390. A disk controller 396 is connected to a floppy disk drive 394and a hard disk drive 392. A communication controller 406 allows thecomputer 360 to communicate with other computers, or send emailmessages, for example over a telephone line 402, or a network 404. AnI/O (Input/Output) controller 408 is connected to a printer 410 and ahard disk 412, for example using a SCSI (Small Computer SystemInterface) bus. There is also a display controller 416 connected to aCRT (Cathode Ray Tube) 414, although any other type of display may beused including a liquid crystal display, a light emitting diode display,a plasma display, etc.

FIG. 9 illustrates various objects such as software objects and modulescontained within the computer 306. The computer 306 is connected to amail server 430 through which mail is sent and received. The mail server430 may be located at the Internet service provider 264 of FIG. 5, maybe located on a network, may be owned by the company owning the computer360, or may even be located inside of the computer 360, for example. Anemail processor 432 is utilized to control the transmitting andreceiving of electronic mail messages. The email processor may beimplemented in any desired or known manner and may be based oncommercially available electronic mail programs such as Microsoft'sOutlook Express, or GroupWise by Novell, although any other emailprogram may be used, if desired. As a specific implementation, the emailsystem may retrieve email from the server using POP3 (Post OfficeProtocol) and to access the email server in order to send emails usingSMTP (Simple Mail Transfer Protocol), although any other protocol may beused, if desired. If the computer 360 utilizes an operating system suchas an operating system from Unix, then the computer will usually have anIP address and a mail system built-in. Therefore, there may be no needto utilize the mail server 430 with such a system. A registry 434contains various information of the system and may be implemented in thesame or similar manner as the registry of Windows 95, Windows 98, and/orWindows NT, for example. Incoming mail information 436 may be utilizedto store incoming mail. Additionally, if desired the incoming mailinformation 436 may be implemented to store the POP3 location, and storefile information about the incoming emails. Outgoing mail information438 contains information regarding SMTP and file information foroutgoing mail. A device driver 440, such as printer driver, scannerprinter, or other driver, for example may be used to communicate withthe device 442 which may be any type of device from which information isdesired or to which information or control signals are to be sent. Thedevice driver 440 is implemented to translate commands or signals fromthe email processor 432 to signals which are transmitted to the device442 and vice versa. Alternatively, the email processor 432 may performmore of the processing functions and the device driver 440 may have moresimple programming and few responsibilities. Further, any otherimplementation of the software may be utilized as long as the functionof proper communication and control of the device 442 using emailmessages is performed.

A more detailed exemplary implementation of the device driver 440 ofFIG. 9 is illustrated in FIG. 10. The device driver 440 includes adevice function support module 454 which may be implemented to performthe conventional and/or desired functions of a device driver. The devicedriver 440 also includes a remote control and diagnostic module 452. Ifdesired, the remote control and diagnostic module 452 may be implementedto perform some or all of the control and/or diagnostic functions whichare described in the related patent and patent applications and areincorporated by reference above. By implementing the control anddiagnostic module 452 in the device driver 440, the cost of the device442 may be reduced and the resources and capabilities of the device 442may be eliminated or reduced such as by reducing the amount of memory inthe device 442 such as DRAM (Dynamic Random Access Memory) or flashmemory, for example. This reduced cost is possible as the hardwareresources of the computer 360 may be utilized in place of constructingadditional hardware to go into the device 442, if desired. Variousinformation including log information and error information may bestored in a data base which includes device data 456 using any desiredhardware and data or data base management software. Further, softwarewithin the device 442 may be reduced by increasing the functionsperformed by the device driver 440 including functions performed by theremote control and diagnostic module 452 and the device function supportmodule 454. These two software modules may be implemented in onesoftware module, if desired. Additionally, the software which keepstrack of the usage of the device may be removed from the device itselfand included in the device driver 440.

FIG. 11A illustrates an exemplary email message utilized by theinvention. In FIG. 11A, lines 1-7 are part of the email header. Eachheader field contains a name, followed by a colon, followed by the fieldvalue. RFC (Request For Comments) 822 specifies the format andinterpretation of the header fields, which is incorporated by reference.The fields of the header illustrated in FIG. 11A are fairly standard andself-explanatory. Line 1 indicates from where the email originated, line2 indicates the date the email was sent, line 3 indicates a nameassociated with the email address (Service Center), line 4 indicates towhom the email is addressed and line 5 indicates the subject of theemail message. Line 6 indicates the MIME version utilized by attachmentencodings. MIME is utilized to send binary files in electronic mailmessages which permit only ASCII characters. MIME allows the binaryencoding to be converted to these ASCII characters which aresubsequently converted back to the original binary files at theappropriate time. Such a use of MIME encoding is well known. Line 7designates one or more content fields such as the type of text, thelength of the message and any other desired information.

Additionally, email messages also contain what is referred to as anenvelope which is used by the message transfer agents for delivery. Theenvelope may be specified by SMTP commands such as “mail from” and “RCPT2”. Further information about the envelope is specified in RFC 821,which is incorporated herein by reference. A third part of an emailmessage is the message body which is the content of the message. RFC 822specifies the body as lines of ASCII text. In FIG. 11A, the body is setforth in lines 9-18.

There may be files attached to electronic mail messages, for example asillustrated in FIG. 11B. The attached file in FIG. 11B is an executablefile which allows a user to execute the programming code containedwithin the file. The attachment of files including executable files toelectronic mail messages is a known feature of email messages.

FIG. 12 illustrates a typical screen display of a computer executing anelectronic mail program and displaying the email message of FIG. 11A.When the FIG. 11A is displayed, the various encoding information is notshown to the user but is displayed in an appropriate format. At thebottom of the display 470 is a section relating to attachments. Themessage displayed in FIG. 12 shows an executable file “MAINTENANCE.EXE”as an attached file. As explained in the body or message of the email,by executing the attached file, the attached file will cause certaintesting, gathering of information, controlling, or logging ofinformation of the attached printer. Typically, the attached file isexecuted by “clicking” or “double-clicking” on the attachment.Alternatively, the attachment may be saved as a separate file and thenexecuted using the appropriate commands available within the operatingsystem. Further, any other desired method may be used to execute thefile.

FIG. 13 illustrates a process of receiving an email message which isultimately used to transmit information such as data, control commands,or diagnostic commands to an attached device according to a firstembodiment of the invention. This method may be performed with anydesired type of computerized or other type of hardware and/or softwareand may be performed using the hardware and software organization, asdescribed above. In the embodiment of FIG. 13, the email message isreceived in any conventional or desired manner and it is a manual actionby the user which causes the email message to perform the desiredoperation. In FIG. 13, after starting, the computer receives an incomingemail message. In step 492, the user opens the email message inaccordance with the requirements of the email program which is executingon the user's computer and in step 494, the message body of the emailmessages displays instructions and requests the user to execute theattached file. Step 494 corresponds to the display of FIG. 12. FIG. 12shows that the message displays to the user the origin of the emailmessage, the purpose of the email message, and how the user shouldexecute the attached file in order to perform the desired operations.Alternatively, any desired message may be displayed to the user. Theoperations which are performed are determined by the attached fileMAINTENANCE.EXE.

Step 496 determines if the user “clicked” the attached file which causesthe attached file to be executed. Alternative manners of executing theattached file may be performed such as double clicking the attachedfile, saving the attached file, and using a command of the operatingsystem to cause the file to execute, or the attached file may beexecuted in any other way. After the user causes the execution of theattached file to begin, flow proceeds to step 498 which executes theattached file. In the preferred form of the invention, the attached filecauses commands to be transmitted to the device driver. In step 500, thedevice driver receives the commands from the executing attachment andsends the appropriate commands and information to the attached device.In step 502, the operation specified by the attached file is performedby the device. Such an operation may be any type of operation includingany of the operation, control functions, or data requests ormanipulations described in any of the related patents and patentapplications specified above. Exemplary operations performed by thedevice including remote control and diagnostic operations, thetransmitting of information pertaining to the operation or failureswhich have occurred within the device, and also operating parametersutilized by or stored in the device.

While the process of FIG. 13 has been explained with respect to the useof a device driver, the device driver is a convenient label for theroutine which allows control of the attached device, and any other typeof software which controls the attached device may be utilized in placeof the device driver. For example, the email program itself may be ableto send commands and/or data directly to the attached device. Theattached device may be any of the devices which have been explainedabove.

One manner of causing the execution of the program code is to use agraphical pointing device such as a mouse connected to the computer,having the user place a pointer on the object representing the file(e.g., the attached file maintenance.exe), and subsequently having theuser press a button while the user points to the file.

FIG. 14 illustrates an alternative embodiment of receiving emailmessages in which the computer or program executing thereinautomatically detects that the incoming email message is used forcommunication with the attached device. Thus, in this embodiment, theremay be no need for the user to execute an attached file. In FIG. 14,after starting, step 520 receives an incoming email message. In step522, a program, such as an electronic mail processing program, detectsthat there is an incoming email message. The detection of incoming emailmay be performed in any desired manner. Currently, commerciallyavailable email programs have the capability to automatically detectincoming email messages and such conventional automatic detectingcapabilities may be utilized. Further, in Unix, a specific directorylabeled “/var/mail” which contains a file with a user name receivesfiles corresponding to incoming email messages and when this filechanges in size, appears, or more files appear, the system can detectthat there is an incoming email message. In step 524, the executingprogram parsing the email to determine if the email is for the attacheddevice. Such parsing is performed by determining if a predetermined codeexists at a predetermined place in the email message. Exemplarypositions of such a code may be in the subject line of the emailmessage, may be a special code which appears within the message body,may be a code which appears in the message header, including a userdefined field within the header, or may even be in the message envelope.It may also be possible for the incoming email message to have anaddress which is routed to the computer which is attached to the deviceand such messages are not displayed to the user but are directly usedfor processing. Step 526 performs an analysis of the parsed email todetermine if the email is for the user or for the attached device. Whenthe email is determined to be for the attached device, flow proceeds tostep 528 which performs an operation in response to the email for thedevice. This performed operation may be any of the previously describedoperations including operations described in the related patents andpatent applications including the performing of a mechanical action,such as movement of a scanning head or printer head or causing any othertype of mechanical actions typically performed by the device inquestion, and also operations including the transmitting of parameters.

When step 526 determines that the attached email is for a user (e.g.,the email is unassociated with the attached device and is not used tocontrol or monitor the attached device), flow proceeds from step 526 tostep 530 which allows the user to view, reply to, forward, or performany other desired function on this email. From steps 530 and 528,control flows to step 532 which determines if there are additional emailmessages. If there are more messages, flow proceeds back to step 524. Ifthere are no more messages, the process of step 532 ends.

In addition to receiving electronic mail messages which are used formonitoring and/or controlling an attached device, the invention alsoincludes the transmission of email messages which contain information ofthe device attached to the computer. The present invention prepares datafor transmission in email messages, such as the information which isillustrated in FIGS. 17-20 which are explained below.

FIG. 15 illustrates a first embodiment of transmitting an email message.After starting, the message is prepared to be transmitted in step 540.In order to prepare the message to be sent, data which is part of themessage is obtained or generated. This data may be obtained by queryingthe device attached to the computer, or alternatively, is already storedin the computer. The data may also be obtained as disclosed in therelated applications, if desired. The email message is prepared to havea format of conventional email systems including the envelope, header,and body of the email message, as explained above, although any desiredformat may be used.

Step 542 then sends the message to an outmail object. An outmail objectis preferably a software object or routine executing within the computerwhich performs the transmission out of the computer. The manner in whichthe transmission is performed in the Microsoft Windows environment isthrough the use of the Messaging Application Programming Interface(MAPI). The MAPI allows interaction with messaging system and does notrequire a programmer to write all code which is utilized to transmitmessages. By setting the MAPI in windows to a specific program, such asthe Microsoft Outlook Express email program, when a message istransmitted to the outmail object (the MAPI client), the messagetransmission may become automated. Details regarding the implementationand use of MAPI are set forth in the book “Inside MAPI” by Irving De laCruz and Les Thalaer, published by the Microsoft Press, 1996, which isincorporated herein by reference. Any feature regarding the use of MAPIdisclosed in this book may be utilized to implement the presentinvention using the MAPI client. In step 544, the email message istransmitted out of the client, preferably using the outmail object.

The outmail object has been described as being the Windows MAPI.However, any other outmail object may be used to assist in thetransmission of email messages. Alternatively, a software object doesnot have to be used but any desired code which assists in thetransmission of the outmail object may be utilized.

An alternative manner of transmitting email messages according to thepresent invention is illustrated in FIG. 16. The method of FIG. 16 ispreferably performed in a Unix environment, although any other softwareor operating system environment may be utilized as long as the desiredsteps are performed. In FIG. 16, after starting, step 560 prepares themessage to be sent. This step is utilized to obtain the informationwhich is to be transmitted and may be performed in a similar manner ofstep 540 of FIG. 15 is performed, if desired. In step 562, the mailoutput files are prepared and include the message which was prepared instep 560. In step 564, the output files which may be one or more files,the number of files being the number appropriate to the operatingsystem, are stored in an outgoing mail directory which in Unix isreferred as the mail spool directory. This directory in Unix may belocated at /var/spool/mqueue, although any other appropriate directorymay be used. Once the appropriate file(s) is (are) stored in the desiredlocation, step 566 is performed which transmits an electronic mailmessage corresponding to the file(s) which has been stored. The processof FIG. 16 then ends.

FIG. 17 illustrates a data structure 580 containing device information.This is information which is preferably transmitted from the device tothe computer and/or from the computer out to a network using an emailformat. FIG. 17 is an exemplary format and any desired format orinformation of the attached device which is of interest may betransmitted. The data structure 580 illustrated in FIG. 17 includes adevice identification 582, a model of the device 584, a device type 586which indicates information such as whether the device is a scanner,digital copier, printer, fax machine, multifunction device, or any otherinformation regarding the type of the device. Field 588 illustrates thecapabilities of the device such as the optional equipment andcapabilities of the device such as the type of output trays (e.g., asorter), or whether the device has an automatic document feeder, forexample, as explained in the related applications and patents. Further,information relating to the operation of the device may be transmitted.The information illustrated in FIG. 17 relates to a printer, copier, ormultifunction device, and different information may be utilized fordifferent type of devices. Exemplary information which may be includedin the device information data structure 580 include a total number ofpage or paper jams 590, a total number of jobs which were performed 592,a total number of pages printed 594, a total number of color pagesprinted 596 which is applicable only to color printers or devices, anaverage number of pages per job 598, a number of jobs since the lastreport 600, a number of pages since the last report 606, a field 608which stores information of the last 20 jobs including the time stampsrelated to when these jobs occurred, and a field 610 which includesinformation of the last 20 abnormal jobs (e.g., jobs which did notfinish in accordance with normal or standard procedures) including thetime stamps of when these jobs or abnormalities occurred, if desired.

The present invention may be utilized to create informational reportsregarding status or other information of the device which is beingmonitored. The information of the devices may be transmitted over theInternet to another company or to a computer of the same company, oralternatively may be transmitted as an email which remains within theprivate network such as the local area network or a wide area network ofa company. A machine which receives email messages prepared andtransmitted in accordance with the teachings of this invention may betransmitted to a device such as the service machine 254 illustrated inFIG. 5. The service machine may then notify an appropriate entity suchas a third party service center, a service center of the devicemanufacturer such as the copier or printer manufacturer's service centeror other authorized service center, or any other entity and indicatethat a specific problem exists. Such notification may be performedthrough electronic mail, through a direct computer connection, through atelephone call to a person using a facsimile transmission, through theindication of a voice message, or in any other desired manner.

FIG. 18 illustrates a log of collected data from various machines whichindicates a problem with the machine. The log contains theidentification of the machine which is having the problem, the locationof the machine, the particular problem with the machine, and the entitywhich has been notified. The information which is received andtransmitted in accordance with the log of FIG. 18 may operate inaccordance with the teachings of any of the cross-referencedapplications. The log may be generated at and/or stored in any of thecomputers of FIG. 5, for example.

FIG. 19 illustrates an example of data which has been collected throughan inquiry. The inquiry in the example of FIG. 19 may be utilized toindicate the total number of installed machines of a particular model(e.g., the FT 6650), the number of these devices having a sorter, theaverage of number of copies per job per machine, and the average use ofthe sorter. Any other desired information may also be included in thestatus report. The status report may be generated at and/or stored inany of the computers of FIG. 5, for example.

FIG. 20 illustrates a monthly usage report 670. This report could havebeen generated for a computer network having four printers and threecopiers which are located on the network. The report was preferablygenerated according to the teachings in this invention using emailmessages, although the report could also have been generated using thetechniques described in the cross-referenced applications, if desired.The report of FIG. 20 and the other reports and information providingcapabilities of this invention may be generated by or stored withincomputer 272 of FIG. 5. Alternatively, computer 282 of FIG. 5 could beused to generate and/or store such a report. This type of report wouldallow in-company monitoring of machines which are connected to a networkor intranet and the computer maintaining information and statisticsabout the machines attached to the network may be part of the network,whether it be a local area network, wide area network, or across theInternet, for example. Alternatively, the report could be generated formachines on one of the networks 260, 274, or 284 by the service machine254 which stores the appropriate information in the data base 256.

In its preferred implementation, the present invention utilizescomputers having separate housings than the device to which they areattached. This would allow the invention to be inexpensively implementedfor installations which already have an existing computer for performingthe desired processing as the new hardware costs may be reduced. Such anarrangement may also permit implementation of the invention withouthardware changes to the device. However, if desired, the presentinvention may be implemented by including the appropriate processing anddata storage capabilities in the device which is being monitored and/orcontrolled in addition to or as an alternative to a separate computerconnected to the device. Further, this invention may be particularlyapplicable to existing installations such as a print server. A printserver is connected to a computer network and receives requests toperform printing operations and distributes these printing operations toappropriate printing devices connected to the print server.

This application relates to and builds on various concepts which havebeen disclosed in the cross-referenced patents and patent applicationswhich have been incorporated into this application by reference. Thispatent application is intended to include not only the inventionsdisclosed in the related applications, but also the combinations ofvarious features and functions of the individual embodiments which havebeen disclosed in this and each of the related applications. Thus, afeature disclosed in one of the related applications or patents may bereadily applied a concept disclosed in this invention, and also, theconcepts disclosed in one or more of the other applications may beapplied concepts or features disclosed in other(s) of the applications.Further, an email message may be used for only one of sending andreceiving, with communication in the other direction being performedusing a different mode of communication, such as one of the othercommunication modes disclosed herein, or a communication mode disclosedin the related patents and patent applications.

This invention may be conveniently implemented using a conventionalgeneral purpose digital computer or microprocessor programmed accordingto the teachings of the present specification, as will be apparent tothose skilled in the computer art. Appropriate software coding canreadily be prepared by skilled programmers based on the teachings of thepresent disclosure, as will be apparent to those skilled in the softwareart. The invention may also be implemented by the preparation ofapplication specific integrated circuits or by interconnecting anappropriate network of conventional component circuits, as will bereadily apparent to those skilled in the art.

The present invention includes a computer program product which is astorage medium including instructions which can be used to program acomputer to perform a process of the invention. The storage medium caninclude, but is not limited to, any type of disk including floppy disks,optical discs, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs,EEPROMs, magnetic or optical cards, or any type of media suitable forstoring electronic instructions.

Obviously, numerous modifications and variations of the presentinvention are possible in light of the above teachings. It is thereforeto be understood that within the scope of the appended claims, theinvention may be practiced otherwise then as specifically describedtherein.

1. A method for receiving information of an attached business officedevice at a remote center through the Internet, comprising: receiving,by a computer, the information from the attached business office device,wherein the attached business office device is attached to the computerand the information is obtained through a driver software componentcontaining a device identification; transforming the obtainedinformation into a format using the device identification, fortransmission by the computer; transmitting the transformed informationincluding the device identification to the remote center through theInternet; receiving, at the remote center, the transformed informationalong with the device identification; and extracting information fromthe received transformed information and storing the extractedinformation in a database.